package com.itheima.exception;

public class Demo03 {
    public static void main(String[] args) {
        int[] arr= {11,22,323,44,55};
        try {
            System.out.println("A");
           // int i=1/0;
          //  arr=null;
            System.out.println(arr[5]);
            System.out.println("B");
        } catch (ArrayIndexOutOfBoundsException e) {
            //如果没有遇到异常
            //try 完全执行 不执行catch  catch 后正常执行
            /*
            如果遇到了异常
            try中 异常前的代码正常执行 异常后的代码就不执行了
            执行catch 中的代码
            catch 后的代码
             */

            System.out.println("C");
            String message = e.getMessage();
            System.out.println(message);
            e.printStackTrace();
            String s = e.toString();
            System.out.println(s);
        }catch (NullPointerException e){
            /*
            如果抛出的异常没有被捕获
            异常处理就没有用了,交给jvm处理  jvm 打印报错信息 停止程序
             */
            System.out.println("F");

        }catch (Exception e){
            /*
            如果有多个捕获异常  顺序  先 小 后大   先子类异常 再父类异常
             */
            System.out.println("G");
        }
        System.out.println("D");

    }
}
